home *** CD-ROM | disk | FTP | other *** search
/ Chip 2005 February / CMCD0205.ISO / Software / Freeware / Programare / highlight / highlight-W32GUI-2.2-6-Setup.exe / {app} / README_ES.txt < prev    next >
Text File  |  2004-11-27  |  13KB  |  375 lines

  1. --------------------------------------------------------------------------------
  2. ---  MANUAL DE HIGHLIGHT - Versi≤n 2.2-6 ------------------------ JULIO 2004 ---
  3. --------------------------------------------------------------------------------
  4.  
  5. OSI Certified Open Source Software
  6.  
  7. Deutsche Anleitung: README_DE
  8.  
  9. --------------------------------------------------------------------------------
  10.  
  11. Highlight convierte c≤digo fuente a archivos HTML, XHTML, RTF, LaTeX,
  12. TeX or XSL-FO con resalte de sintaxis.  Las definiciones de lenguajes,
  13. temas de color e indentaci≤n son configurables.
  14.  
  15.  
  16. CONTENIDO:
  17.  
  18. 1.  Plataformas
  19. 2.  Lenguajes de programaci≤n/marcado contemplados
  20. 3.  Caracterφsticas
  21. 4.  Formato del fichero Highlight
  22. 5.  Definici≤n de nuevos lenguajes
  23. 6.  Definici≤n de nuevos temas de color
  24. 7.  Definici≤n de nuevos esquemas de indentaci≤n
  25. 8. Informaci≤n de contacto
  26.  
  27.  
  28. 1. PLATAFORMAS
  29. --------------------------------------------------------------------------------
  30.  
  31. Highlight estß escrito en ISO C++. Existen tres versiones:
  32. - aplicaci≤n UNIX para consola
  33. - aplicaci≤n W32 para consola
  34. - aplicaci≤n W32 grßfica
  35.  
  36. El paquete fuente compila con gcc3.x, MS Visual .NET y MW Codewarrior 8.
  37.  
  38.  
  39. 2. LENGUAJES DE PROGRAMACI╙N / MARCADO CONTEMPLADOS:
  40.  
  41. Actualmente, highlight contempla los siguientes lenguajes de
  42. programaci≤n, marcado y ficheros de configuraci≤n:
  43.  
  44. Action Script, ADA 95, Agda, AMPL, Aspect, Assembler, Amtrix, Avenue, (G)AWK,
  45. Bash, BlitzBasic, BibTex, BMS, C,C++, C#, ClearBasic, Clipper, Cobol, Coldfusion
  46. MX, CSS, DOS-Batch, Eiffel, Erlang, Euphoria, Express, Felix, Fortran, Frink,
  47. Haskell, HTML, httpd.conf, Icon, IDL, INI, IO, Jasmin, Java, JavaScript, JSP,
  48. LaTeX, LDIF, Lisp, Lotos, Lotus Script, Lua, Make,Maya, Matlab, Maple, Modelica,
  49. Modula 3, Nasal, OCaml, (Object) Pascal, Objective C, Paradox, PATROL, Perl,
  50. PHP, Pike, PL/1, PL/SQL, PostScript, POV Ray, Progress, Prolog, Python, Relax
  51. NG Compact, Rexx, RPM Spec, Ruby, Small, SML, Spin, Squirrel, SuperX++, Sybase,
  52. VHDL, Visual Basic, XML.
  53.  
  54.  
  55. 3. CARACTER═STICAS:
  56. --------------------------------------------------------------------------------
  57.  
  58. - resaltado de palabras clave, tipos, cadenas, n·meros, secuencias de
  59.   escape, comentarios, sφmbolos y directivas.
  60. - resaltado de conjuntos de palabras clave configurables.
  61. - salida coloreada en formato HTML, XHTML 1.1, RTF, TeX, LaTeX o XSL-FO
  62. - reformateo e indentaci≤n configurable de c≤digo fuente  C, C++, C# y
  63.   Java
  64. - divisi≤n de lineas largas
  65. - n·meros de lφnea
  66. - elecci≤n entre empotrar las definiciones CSS en el fichero (X)HTML o
  67.   guardarlas como un fichero CSS aparte
  68. - 50 temas de color
  69. - procesado por lotes recursivo de directorios
  70. - conversi≤n de texto plano al formato elegido sin resalte de sintaxis.
  71.  
  72.  
  73. 4. FORMATO DEL FICHERO HIGHLIGHT
  74. --------------------------------------------------------------------------------
  75.  
  76. Todos los ficheros de configuraci≤n de highlight se guardan en ficheros de texto.
  77. El formato es simple:
  78.  
  79. $ParamName=ParamValue
  80.  
  81. ParamName es el identificador del parßmetro, ParamValue es su valor.
  82. Los nombres de parßmetros no distinguen entre may·scula y min·scula.
  83. El valor puede ser un carßcter simple o una lista de palabras. Las listas se
  84. pueden separar en m·ltiples lφneas.
  85.  
  86. Las lφneas que comienzan con # en la primera columna son comentarios
  87.  
  88. 5. DEFINICI╙N DE NUEVOS LENGUAJES:
  89. --------------------------------------------------------------------------------
  90.  
  91. Una definici≤n de lenguajes es un fichero de texto, en el que las palabras clave
  92. y los sφmbolos del lenguaje de programaci≤n pertenecen a diferentes categorφas.
  93. Se debe guardar el fichero en directorio highlight/langDefs* con el siguiente
  94. nombre:
  95.  
  96. <extensi≤n propia de los fichero del lenguaje>.lang
  97.  
  98. Ejemplos: PHP -> php.lang, Java -> java.lang
  99.  
  100. Si existen m·ltiples sufijos, p≤ngalos en extensions.conf*.
  101.  
  102. FORMATO DEL FICHERO:
  103.  
  104. # Lista de palabras reservadas; <class> es el nombre de la clase de palabras
  105. # reservadas
  106. # La clase debe estar definida en el tema de color aplicado para que el estilo
  107. # de resalte coincida
  108. $KW_LIST(<class>)=<List>
  109.  
  110. # Prefijo que determina palabras clave
  111. # La clase debe estar definida en el tema de color aplicado para que el estilo
  112. # de resalte coincida
  113. $KW_PREFIX(<class>)=<Character>
  114.  
  115. # Delimitadores para palabras clave
  116. # La clase debe estar definida en el tema de color aplicado para que el estilo
  117. # de resalte coincida
  118. $KW_DELIM(<class>)=<open close>
  119.  
  120. # Delimitadores para marcas de apertura y cierre
  121. # Las marcas se formatean como palabras clave de la clase especificada
  122. $TAG_DELIM(<class>)=<tag_open tag_close>
  123.  
  124. # Lista de delimitadores de cadena
  125. $STRINGDELIMITERS=<List>
  126.  
  127.  
  128. # Par de delimitadores de cadena diferentes
  129. # Ejemplo: s" " en Forth
  130. $STRINGDELIMITERPAIR=<open close>
  131.  
  132. # Lista de caracteres de escape en cadenas (ie. "\")
  133. $ESCCHAR=<List>
  134.  
  135. # Prefijo que desactiva el resalte de caracteres de escape
  136. # para la siguiente cadena
  137. $RAWSTRINGPREFIX=<Character>
  138.  
  139. # Delimitadores de comentarios multi-lφnea
  140. $ML_COMMENT=<comment_begin comment_close>
  141.  
  142. # Lista de cadenas que comienzan comentarios de una lφnea
  143. $SL_COMMENT=<List>
  144.  
  145. # Fijado a 'true' si los comentarios de una lφnea tienen que empezar en la
  146. # primera columna
  147. $FL_COMMENT=<true / false>
  148.  
  149. # Cadena de comienzo de las directivas del preprocesador
  150. $DIRECTIVE=<prefix>
  151.  
  152. # Fijado a 'true' si el c≤digo fuente del lenguaje se puede reformatear
  153. # (s≤lo lenguajes tipo C!)
  154. $REFORMATTING=<true / false>
  155.  
  156. # Sφmbolos que se pueden colorear (llaves, operadores,  etc)
  157. $SYMBOLS=<List>
  158.  
  159. # Lista de caracteres especiales que pueden aparecen en palabras reservadas
  160. $ALLOWEDCHARS=<character list>
  161.  
  162.  
  163. # Fijado a 'true' si los comentarios multi-lφnea se pueden anidar
  164. $ALLOWNESTEDCOMMENTS=false
  165.  
  166. # Fijado a 'true' si el lenguaje de programaci≤n no distingue entre may·sculas
  167. # y min·sculas
  168. $IGNORECASE=<true / false>
  169.  
  170. # Incluye otra definici≤n de lenguaje almacenada en el mismo directorio
  171. $INCLUDE=<language definition>
  172.  
  173.  
  174.  
  175. Ejemplo:
  176.  
  177. #Contenido de pas.lang (Pascal/Object Pascal)
  178.  
  179. $KW_LIST(kwa)=true false if else then nil maxint case goto label and div downto in
  180. mod not of or packed with do for do repeat while to until procedure function
  181. program begin end const var type unit interface implementation uses private
  182. public
  183.  
  184. $KW_LIST(kwb)=array boolean char integer file pointer real set string text record
  185.  
  186. $STRINGDELIMITERS=" '
  187. $SL_COMMENT=//
  188. $ML_COMMENT={ }
  189. $IGNORECASE=true
  190.  
  191. CONSEJO: Si no quieres guardar definiciones de lenguajes nuevas en el directorio de
  192.          instalaci≤n por defecto, debes indicar a highlight otra ruta
  193.          donde buscar con la opci≤n --add-data-dir.
  194.  
  195.  
  196. 6. DEFINICI╙N DE NUEVOS TEMAS DE COLOR
  197. --------------------------------------------------------------------------------
  198.  
  199. Los temas de color se guardan en ficheros ASCII, en los que se define el for-
  200. mato de salida. La salida RTF ignora el atributo de color de fondo. Los fiche-
  201. ros deben estar en el directorio themes* y deben tener extensi≤n *.style.
  202. Para aplicar un estilo se debe indicar la opci≤n -s.
  203.  
  204. FORMATO DEL FICHERO:
  205.  
  206. #<ColourAttr> = RR GG BB
  207. #RR GG BB describe los valores rojo/verde/azul en hexadecimal que definen el color.
  208. #(Rango: 00 (nada) - FF (todo))
  209.  
  210. #<FormatAttr> = <bold> <italic> <underline>
  211. #Negrita, cursiva y subrayado son atributos opcionales que se pueden combinar
  212.  
  213. # Color del texto no reconocido
  214. $DEFAULTCOLOUR=RR GG BB
  215.  
  216. # Color de fondo (ignorado por RTF)
  217. $BGCOLOUR=RR GG BB
  218.  
  219. # Tama±o de letra
  220. $FONTSIZE=<number>
  221.  
  222. # Formato de palabras reservadas, que pertenece a la clase correspondiente
  223. $KW_CLASS(<class>)=<ColourAttr> ( <FormatAttr> )
  224.  
  225. # Formato de los n·meros
  226. $NUMBER=<ColourAttr> ( <FormatAttr> )
  227.  
  228. # Formato de los caracteres de escape
  229. $ESCAPECHAR=<ColourAttr> ( <FormatAttr> )
  230.  
  231. # Formato de las cadenas
  232. $STRING=<ColourAttr> ( <FormatAttr> )
  233.  
  234. # Formato de las cadenas con directivas del compilador
  235. $STRING_DIRECTIVE=<ColourAttr> ( <FormatAttr> )
  236.  
  237. # Formato de los comentarios
  238. $COMMENT=<ColourAttr> ( <FormatAttr> )
  239.  
  240. # Formato de los comentario de una lφnea
  241. $SL-COMMENT=<ColourAttr> ( <FormatAttr> )
  242.  
  243. # Formato de las directivas del compilador
  244. $DIRECTIVE=<ColourAttr> ( <FormatAttr> )
  245.  
  246. # Formato de sφmbolos (opcional, igual a $DEFAULTCOLOUR si se omite)
  247. $SYMBOL=<ColourAttr> ( <FormatAttr> )
  248.  
  249. # Formato de los n·meros de lφnea
  250. $LINE=<ColourAttr> ( <FormatAttr> )
  251.  
  252.  
  253. Ejemplo:
  254.  
  255. # Golden.style
  256. $DEFAULTCOLOUR=dd bb 00
  257. $BGCOLOUR=00 00 00
  258. $FONTSIZE=10
  259. $KW_CLASS(kwa)=dd bb 00 bold
  260. $KW_CLASS(kwb)=dd bb 00
  261. $NUMBER=ff ff ff
  262. $ESCAPECHAR=ff 00 00
  263. $STRING=ff 00 00
  264. $STRING_DIRECTIVE=ff 00 00
  265. $COMMENT=97 83 45 italic
  266. $DIRECTIVE=ff dd aa
  267. $LINE=97 83 45
  268.  
  269.  
  270. 7.  DEFINICI╙N DE NUEVOS ESQUEMAS DE INDENTACI╙N
  271. --------------------------------------------------------------------------------
  272.  
  273. Se pueden definir esquemas de indentaci≤n y formateo a medida. Para habilitar el
  274. reformateo de un lenguaje de programaci≤n, la opci≤n $REFORMATTING=true debe
  275. a±adirse a la definici≤n del lenguaje. Note que el reconocedor 'Artistic Style'
  276. se dise±≤ s≤lo para manejar lenguajes tipo C (C++, Java, C#).
  277. Los esquemas de indentaci≤n se guardan en el directorio indentSchemes* y deben
  278. tener extensi≤n *.indent. Los esquemas se aplican con la opci≤n --format-style.
  279.  
  280. FORMATO DEL FICHERO:
  281.  
  282. # manejo de llaves:
  283. # "break":  Separar llaves del bloque precedente (i.e. ANSI C/C++ style).
  284. # "attach": Dejar las llaves junto al bloque precedente (i.e. Java/K&R style).
  285. # "linux":  Separar llaves en los bloques de definici≤n y dejarlas en los bloques de ≤rdenes.
  286. # "break-closing-headers": Separar llaves antes de las cabeceras de cierre (e.g. 'else',
  287. #                          'catch', ..).  Se deberφa a±adir a $brackets=attach o $brackets=linux.
  288. $BRACKETS=<break | attach | linux | break-closing-headers>
  289.  
  290. # Inserta lφneas vacφas entre bloques no relacionados, etiquetas, clases, ...
  291. # "true": modo por defecto
  292. # "all":  tambiΘn inserta lφneas vacφas entorno a las cabeceras de cierre
  293. #        (e.g. 'else', 'catch', ...).
  294. $BREAK-BLOCKS=<true | false | all>
  295.  
  296. # Divide las sentencias 'else if()' en dos lφneas diferentes.
  297. $BREAK-ELSEIFS=<true / false>
  298.  
  299. # A±ade indentaci≤n extra para bloques (incluyendo las llaves).
  300. $INDENT-BLOCKS=<true / false>
  301.  
  302. # A±ade indentaci≤n extra a las llaves.
  303. $INDENT-BRACKETS=<true / false>
  304.  
  305. # Indenta las lφneas 'case XXX:', de modo que se alineen con sus bloques de c≤digo.
  306. $INDENT-CASES=<true / false>
  307.  
  308. # Indenta los bloques 'class' 'class' blocks, asφ como su 'public:', 'protected:'
  309. and 'private:'
  310. # Las cabeceras se indentan en relaci≤n a bloque de la clase.
  311. $INDENT-CLASSES=<true / false>
  312.  
  313. # Indenta etiquetas de modo que aparecen en un nivel de indentaci≤n menos que el actual,
  314. # en lugar de completamente a la izquierda (que es el comportamiento por defecto).
  315. $INDENT-LABELS=<true / false>
  316.  
  317. # Indenta el contenido de los bloques 'namespace'.
  318. $INDENT-NAMESPACES=<true / false>
  319.  
  320. # Indenta las sentencias #define  multi-lφnea
  321. $INDENT-PREPROCESSOR=<true / false>
  322.  
  323. # Indenta usando <num> espacios por indentaci≤n. Si no se especifica <num> se
  324. # aplica el valor por defecto, que son 4 espacios por indentaci≤n.
  325. $INDENT-SPACES=<num>
  326.  
  327. # Indenta los bloques 'switch', de modo que sus 'case XXX:' se indentan en relaci≤n
  328. # al bloque switch block.
  329. $INDENT-SWITCHES=<true / false>
  330.  
  331. # Indenta un fichero fuente Java
  332. $JAVA-STYLE=<true / false>
  333.  
  334. # Indenta un mßximo de <num> espacios en una sentencia continua, de forma relativa
  335. # a la lφnea previa
  336. $MAX-INSTATEMENT-INDENT=<num>
  337.  
  338. # Indenta un mφnimo de <num> espacios en sentencias condicionales continuas.
  339. $MIN-CONDITIONAL-INDENT=<num>
  340.  
  341. # Separar sφmbolos con espacios en blanco:
  342. # "paren": Inserta espacios s≤lo alrededor de los parΘntesis
  343. # "oper":  Inserta espacios s≤lo alrededor de los operadores
  344. # "all":   Inserta espacios alrededor de parΘntesis Y operadores
  345. $PAD=<paren | oper | all>
  346.  
  347.  
  348. Ejemplo:
  349.  
  350. # K&R indentation scheme
  351. $indent-brackets=false
  352. $indent-spaces=4
  353. $brackets=attach
  354. $indent-classes=false
  355. $indent-switches=false
  356. $indent-namespaces=false
  357.  
  358.  
  359.  
  360. 8. INFORMACI╙N DE CONTACTO
  361. --------------------------------------------------------------------------------
  362.  
  363. Andre Simon
  364. andre.simon1@gmx.de
  365. http://www.andre-simon.de/
  366.  
  367. ---
  368. * El directorio de highlight puede ser uno de los directorios listados en
  369. INSTALL. Para UNIX, normalmente es /usr/share/highlight, para Window$, es
  370. la ruta al ejecutable de highlight. Se puede redefinir este directorio en
  371. tiempo de ejecuci≤n con la opci≤n --data-dir, o durante la compilaci≤n (ver
  372. INSTALL para mßs detalles). Highlight espera encontrar los subdirectorios
  373. langDefs/ y themes/.
  374.  
  375.